/* v5 builds on the approved atelier: tactile illustrations, crisp blue controls, warm paper. */
.hours-editor{display:flex;flex-wrap:wrap;gap:20px;align-items:center;background:white;border:1px solid #d6d8cc;border-radius:16px;padding:22px;margin:13px 0 8px;box-shadow:0 3px 0 #d8dace}.hours-editor>label:first-child{display:flex;gap:12px;align-items:center}.hours-editor input[type=number]{width:105px;font-size:25px;text-align:center;padding:10px;border:2px solid #b4baf0;background:#f4f5ff;border-radius:10px;color:var(--blue);font-weight:800}.unknown-hours{display:flex;align-items:center;gap:10px;font-size:15px}.hours-editor input:disabled{background:#ededeb;border-color:#ddd;color:#777}.format-object.notebook-object{object-fit:contain;filter:drop-shadow(0 4px 2px #50452e15)}.object-choice .notebook-object{width:150px;height:134px;margin:0 auto}.answer-objects{flex-wrap:wrap}.answer-objects .object{width:80px}.sample-toggle{background:none;font-size:13px}.portfolio-toolbar{flex-wrap:wrap}.preview-bar #storage-status{font-variant-numeric:tabular-nums}.site-header nav{gap:22px}.site-header{gap:24px}.footer-bottom{flex-wrap:wrap}
/* Every selected interest remains visible, even if its contest is elsewhere. */
.selection-summary{display:grid;grid-template-columns:1.35fr 1fr;background:#fff;border:1px solid #deded1;border-radius:22px;box-shadow:0 4px 0 #dedfd3;overflow:hidden;margin:0 0 54px}.selection-summary>div:first-child{padding:24px 28px}.selection-objects{display:flex;gap:16px;margin-top:7px;flex-wrap:wrap}.selection-object{display:flex;align-items:center;gap:5px;background:var(--tone);border-radius:12px;padding:1px 14px 1px 3px}.selection-object .object{width:72px}.selection-object strong{font-size:15px}.selection-objects.many .selection-object{flex:1 1 180px}.selection-context{padding:28px;background:#f4f3eb;display:flex;flex-direction:column;align-items:start;justify-content:center}.selection-context b{font-size:19px}.selection-context p{font-size:14px;margin:10px 0;color:var(--muted)}.selection-context a{font-size:13px;margin-top:8px}.recommend-intro h1{font-size:46px}.recommend-intro .description{max-width:780px}.interest-lane{margin-top:56px}.interest-lane-head{display:flex;align-items:center;gap:16px;margin-bottom:25px;border-bottom:2px solid var(--ink);padding-bottom:12px}.interest-lane-head>.object{width:90px}.interest-lane-head h2{font-size:26px;margin-top:6px}.interest-lane-head .eyebrow{font-size:12px}.lane-count{margin-left:auto;background:var(--tone);border:1px solid #20253720;border-radius:50%;width:70px;height:70px;display:grid;place-items:center;flex-shrink:0;font-size:13px;font-weight:800}.interest-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;align-items:start}.recommend-option{margin-bottom:28px;background:#fff;border:1px solid #d5d7cf;border-radius:24px;overflow:hidden;box-shadow:0 4px 0 #dedfd3}.option-heading{display:flex;justify-content:space-between;gap:12px;padding:14px 24px;background:var(--tone);align-items:center;border-bottom:1px solid #20253712}.option-number{font-size:13px;font-weight:800}.option-heading .pill{background:#fff9;font-size:11px}.option-main{padding:26px 24px 24px;display:grid;grid-template-columns:115px minmax(0,1fr);gap:22px}.option-art{display:flex;flex-direction:column;align-items:center;justify-content:start}.option-art>.contest-thumb{background:transparent;min-height:115px;padding:0}.option-art>.contest-thumb .object{width:115px}.option-art .contest-thumb>span:not(.object),.option-art .contest-thumb>small{display:none}.option-art>.format-object{width:130px;height:130px;max-width:100%}.option-art>span:not(.object):not(.format-object){font-size:11px;line-height:1.5;background:var(--tone);border-radius:8px;padding:6px 9px;margin-top:8px;text-align:center}.contest-organizer{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:8px;overflow-wrap:anywhere}.option-copy h2{font-size:23px;line-height:1.6;overflow-wrap:anywhere}.option-summary{font-size:15px;margin-top:14px!important;line-height:1.95}.option-facts{display:flex;gap:30px;flex-wrap:wrap;padding-top:18px;margin-top:18px;border-top:1px solid var(--line)}.option-facts span{display:flex;flex-direction:column;font-size:13px}.option-facts small{color:var(--muted);font-size:11px}.option-reason{display:flex;gap:15px;padding:20px 24px;background:#f7f7f1;border-top:1px dashed #cccfc3;border-bottom:1px dashed #cccfc3}.reason-symbol{display:grid;place-items:center;background:var(--lime);border-radius:50%;width:30px;height:30px;flex-shrink:0;color:var(--blue);font-size:23px;font-weight:800}.option-reason h3{font-size:16px;margin-bottom:7px}.option-reason p{font-size:14px;line-height:1.9}.option-reason .micro{font-size:12px;margin-top:9px}.option-actions{display:flex;align-items:center;gap:19px;flex-wrap:wrap;padding:0 24px 30px}.option-actions .btn{min-height:48px;font-size:14px;padding:12px 18px;gap:16px}.option-actions .text-link{font-size:13px}.save-text{background:none;text-decoration:underline;text-underline-offset:4px;font-size:12px;padding:10px 0;color:var(--muted)}.recommend-option.featured .option-main{grid-template-columns:270px 1fr;padding:40px;gap:42px}.recommend-option.featured .option-art{background:var(--tone);border-radius:140px 140px 20px 20px;padding:16px}.recommend-option.featured .option-art>.contest-thumb .object{width:220px}.recommend-option.featured .option-art>.format-object{width:240px;height:230px}.recommend-option.featured .option-copy h2{font-size:34px}.recommend-option.featured .option-summary{font-size:17px}.recommend-option.featured .activity-elements,.recommend-option.featured .option-reason,.recommend-option.featured .qualification,.recommend-option.featured .option-actions{padding-left:40px;padding-right:40px}
/* Shared activity language: mandatory / alternative / optional are structurally different. */
.activity-elements{padding:26px 0}.activity-elements h3{font-size:19px;margin-bottom:16px}.element-groups{display:flex;gap:14px;flex-wrap:wrap}.element-group{background:#f3f4ef;border:1px solid #e1e2d8;border-radius:14px;padding:12px 14px;max-width:100%}.element-group.alternative{background:#f0effc;border-color:#d9d4ee}.element-group.optional{border-style:dashed;background:white}.element-category{font-size:11px;font-weight:800;display:block;color:#555969;margin-bottom:9px}.element-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.element-tile{width:75px;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;flex-shrink:0}.element-tile svg{width:31px;height:33px;color:#374188}.element-tile b{font-size:11px;line-height:1.5;font-weight:600}.element-or{font-size:10px;color:var(--blue);font-weight:700;background:white;padding:3px 6px;border-radius:10px}.element-plus{color:#92968b;font-size:16px}.activity-elements>.micro{margin-top:15px}.recommend-option>.activity-elements{padding:24px}.activity-elements.compact h3{font-size:16px}.activity-elements.compact .element-group{padding:10px}.activity-elements.compact .element-tile{width:64px}.elements-pending{display:flex;gap:13px;background:#f5f5f0;padding:19px;border-radius:14px;margin:24px;font-size:13px}.elements-pending>svg{width:30px;min-width:30px;height:35px}.elements-pending p{font-size:12px;margin-top:5px;color:var(--muted)}.qualification{margin:0 24px 25px;border-left:3px solid var(--coral);padding:1px 0 1px 14px;font-size:12px;color:#666879;line-height:1.8}.qualification b{font-size:13px;color:var(--ink)}.qualification ul{padding-left:18px;margin-top:5px}.qualification details{margin-top:5px}.qualification summary{cursor:pointer;text-decoration:underline}.qualification.checked{border-color:var(--blue)}.qualification p{margin-top:5px}.detail-section .qualification{margin:18px 0}.recommend-option.featured .qualification{margin:0 40px 25px;padding-left:14px;padding-right:0}.next-conversation{display:grid;grid-template-columns:220px 1fr;gap:30px;padding:35px 45px;border-radius:25px;background:var(--lime);align-items:center;margin-top:60px}.next-conversation .object{width:220px}.next-conversation h2{font-size:29px;margin:10px 0}.next-conversation p{font-size:14px}.recommendation-audit{margin-top:28px}
/* Catalogue is a library, separate from the short recommendation list. */
.catalog-counts{display:flex;align-items:center;gap:35px;margin-bottom:27px;padding-bottom:25px;border-bottom:1px solid var(--line)}.catalog-counts>div{display:flex;align-items:baseline;gap:10px;white-space:nowrap}.catalog-counts b{font-size:52px;line-height:1.2;letter-spacing:-.04em;color:var(--blue)}.catalog-counts span{font-size:14px;font-weight:700}.catalog-counts p{font-size:13px;line-height:1.8;color:var(--muted)}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:20px}.catalog-card{background:white;border:1px solid #dcdfd4;border-radius:20px;box-shadow:0 3px 0 #e3e5d9;position:relative;overflow:hidden;display:flex;flex-direction:column}.contest-thumb{background:var(--tone);display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;min-height:175px;padding:12px}.contest-thumb .object{width:135px}.contest-thumb>span{font-size:12px;font-weight:700}.contest-thumb>small{position:absolute;right:9px;bottom:7px;font-size:9px;color:#68696f}.contest-thumb.official img{width:100%;max-height:180px;object-fit:contain}.contest-thumb.compact{flex-direction:row;gap:15px;min-height:138px;justify-content:start;padding:10px 28px}.contest-thumb.compact .object{width:105px}.contest-thumb.compact>span{font-size:15px}.catalog-card-body{padding:22px 24px;flex:1;display:flex;flex-direction:column}.catalog-card-status{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.catalog-card-status .pill{font-size:10px;padding:3px 8px}.catalog-card-body h2{font-size:18px;line-height:1.65;margin-bottom:10px}.catalog-card-body h2 a:hover{color:var(--blue)}.catalog-card-body>p:not(.contest-organizer){font-size:13px;color:#696b76;line-height:1.8}.catalog-card-meta{margin-top:auto;padding-top:18px;display:flex;flex-direction:column;gap:5px;font-size:11px;line-height:1.6}.catalog-card-meta b{font-size:12px}.save-dot{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid #20253740;background:#fffaf0e8;font-size:23px;display:grid;place-items:center;line-height:1}.save-dot[aria-pressed=true]{background:var(--blue);color:white;border-color:var(--blue)}.catalog-provenance{margin-top:26px}.detail-format{display:grid;grid-template-columns:190px 1fr;gap:25px;align-items:center;margin-top:24px;background:#f3f2e9;border-radius:18px;padding:23px}.detail-format .contest-thumb{background:none;min-height:130px;padding:0}.detail-format .contest-thumb>span:not(.object),.detail-format .contest-thumb>small{display:none}.detail-format>.notebook-object{width:190px;max-width:100%;height:165px}.detail-format p{font-size:14px;margin-top:7px}.detail-format b{font-size:14px}.detail-summary{font-size:18px}.caution-list{padding-left:20px;line-height:2;font-size:15px}.info-fold a{text-decoration:underline;overflow-wrap:anywhere}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.settings-card{background:white;border:1px solid var(--line);border-radius:20px;padding:30px;min-width:0}.settings-card h2{font-size:23px;margin-bottom:20px}.settings-card>p{font-size:14px}.settings-card input[type=file]{max-width:100%;font-size:13px;margin-top:18px}.setting-counts{display:flex;gap:25px;padding:15px 0 22px;margin:0}.setting-counts dt{font-size:12px;color:var(--muted)}.setting-counts dd{margin:0;font-size:36px;color:var(--blue);font-weight:800}.settings-card .micro{margin-top:23px}.settings-card .notice{margin-top:20px}.settings-card .notice .btn{margin-top:15px}.settings-card .notice .text-link{background:none;margin-left:10px;font-size:12px}.settings-card .btn{max-width:100%;font-size:14px}
@media(max-width:1100px){.site-header nav{gap:16px;font-size:12px}.site-header{padding-inline:28px;gap:20px}.brand{font-size:25px}.brand svg{width:35px}.site-header .btn{font-size:12px}.catalog-grid{grid-template-columns:1fr 1fr}.option-main{grid-template-columns:80px 1fr;gap:12px;padding:22px 18px}.option-art>.contest-thumb .object{width:80px}.option-copy h2{font-size:20px}.option-facts{gap:12px}.option-reason{padding:19px}.recommend-option>.activity-elements{padding:20px}.qualification{margin-left:20px;margin-right:20px}.option-actions{padding-inline:20px}.option-heading{padding-inline:20px}.option-heading .pill{font-size:10px}.selection-summary{grid-template-columns:1.2fr 1fr}.selection-summary>div:first-child{padding:22px}.selection-object .object{width:58px}.selection-object strong{font-size:13px}.selection-objects{gap:9px}.selection-context{padding:22px}.selection-context b{font-size:17px}}
@media(max-width:800px){.site-header nav{display:none}.interest-options{grid-template-columns:1fr}.option-main{grid-template-columns:120px 1fr;padding:26px}.option-art>.contest-thumb .object{width:120px}.option-copy h2{font-size:23px}.selection-summary{grid-template-columns:1fr}.selection-context{border-top:1px solid #e1e1d8;padding:20px 25px}.selection-object .object{width:75px}.selection-object strong{font-size:15px}.selection-summary>div:first-child{padding:23px 25px}.recommend-option.featured .option-main{grid-template-columns:180px 1fr;padding:28px;gap:25px}.recommend-option.featured .option-art>.contest-thumb .object{width:160px}.recommend-option.featured .option-copy h2{font-size:26px}.recommend-option.featured .option-art>.format-object{width:170px;height:170px}.next-conversation{grid-template-columns:140px 1fr;gap:18px;padding:30px}.next-conversation .object{width:140px}.settings-grid{grid-template-columns:1fr}.catalog-card-body{padding:20px}.contest-thumb.compact{padding:10px 17px}.contest-thumb.compact>span{font-size:13px}.catalog-counts{gap:25px}}
@media(max-width:560px){.preview-bar{gap:9px;font-size:9px;padding:5px 10px}.preview-bar>span:first-child{display:none}.site-header{padding:0 20px;height:80px}.site-header .brand{font-size:24px}.site-header .header-cta{display:none}.site-header .menu-btn{margin-left:auto}.hours-editor{padding:18px;gap:17px}.hours-editor>label:first-child{gap:9px;font-size:14px}.hours-editor input[type=number]{width:92px}.hours-editor .unknown-hours{border-top:1px solid #e5e5dc;padding-top:14px;width:100%;font-size:14px}.object-choice .notebook-object{width:120px;height:115px}.recommend-intro h1{font-size:31px;line-height:1.5}.recommend-intro .description{font-size:14px}.selection-summary{margin-bottom:35px;border-radius:18px}.selection-summary>div:first-child{padding:18px}.selection-objects{gap:8px}.selection-object{padding:0 9px 0 0;gap:0}.selection-object .object{width:54px}.selection-object strong{font-size:12px}.selection-context{padding:18px}.selection-context b{font-size:16px}.selection-context p{font-size:13px}.interest-lane{margin-top:35px}.interest-lane-head{gap:8px;align-items:center;margin-bottom:20px}.interest-lane-head>.object{width:62px}.interest-lane-head h2{font-size:19px;line-height:1.6}.interest-lane-head .eyebrow{font-size:10px;letter-spacing:.01em;gap:5px}.lane-count{width:42px;height:42px;font-size:10px}.recommend-option{border-radius:18px;margin-bottom:15px}.option-heading{padding:12px 16px;gap:8px}.option-number{font-size:11px}.option-heading .pill{font-size:9px;padding:3px 8px}.option-main{display:flex;flex-direction:column;position:relative;gap:16px;padding:20px}.option-art{flex-direction:row;gap:13px;align-items:center;justify-content:start}.option-art>.contest-thumb{min-height:65px}.option-art>.contest-thumb .object{width:75px}.option-art>span:not(.object):not(.format-object){font-size:11px;margin:0}.option-art>.format-object{width:95px;height:90px}.option-copy h2{font-size:23px;line-height:1.6}.contest-organizer{font-size:11px}.option-summary{font-size:15px}.option-facts{justify-content:space-between;gap:14px;padding-top:15px;margin-top:15px}.option-facts span{font-size:13px}.option-reason{padding:19px 18px;gap:10px}.option-reason h3{font-size:15px}.option-reason p{font-size:14px}.option-reason .micro{font-size:11px}.recommend-option>.activity-elements{padding:21px 18px}.element-groups{gap:10px}.activity-elements.compact .element-tile{width:61px}.element-or{font-size:9px;padding:3px 4px}.qualification{margin:0 18px 22px}.option-actions{padding:0 18px 24px;gap:16px}.option-actions .btn{width:100%;font-size:14px}.option-actions .text-link{font-size:12px}.recommend-option.featured .option-main{display:flex;padding:22px;gap:17px}.recommend-option.featured .option-art{padding:8px 15px;border-radius:14px;justify-content:start}.recommend-option.featured .option-art>.contest-thumb .object{width:100px}.recommend-option.featured .option-art>.format-object{width:125px;height:115px}.recommend-option.featured .option-copy h2{font-size:26px}.recommend-option.featured .option-summary{font-size:15px}.recommend-option.featured .activity-elements,.recommend-option.featured .option-reason,.recommend-option.featured .option-actions{padding-left:20px;padding-right:20px}.recommend-option.featured .qualification{margin-left:20px;margin-right:20px;padding-left:13px;padding-right:0}.next-conversation{grid-template-columns:1fr;padding:26px;gap:0;margin-top:35px}.next-conversation .object{width:110px}.next-conversation h2{font-size:25px}.next-conversation .btn{font-size:13px;gap:12px}.next-conversation p br{display:none}.catalog-grid{grid-template-columns:1fr;gap:22px}.catalog-counts{align-items:start;flex-direction:column;gap:16px}.catalog-counts b{font-size:44px}.catalog-counts p{font-size:12px}.catalog-card-body{padding:21px 23px}.catalog-card-body h2{font-size:20px}.contest-thumb.compact{min-height:122px;gap:20px;padding:8px 28px}.contest-thumb.compact>span{font-size:16px}.contest-thumb.compact .object{width:100px}.filters select{flex:1;min-width:0;width:140px}.search-field{min-width:100%}.catalog-card-meta{flex-direction:row;flex-wrap:wrap;justify-content:space-between;gap:10px}.detail-format{grid-template-columns:1fr;padding:20px;gap:12px}.detail-format .contest-thumb{min-height:100px}.detail-format .contest-thumb .object{width:130px}.detail-format>.notebook-object{width:200px;height:160px;margin:auto}.detail-summary{font-size:17px}.detail-list{grid-template-columns:75px 1fr;gap:18px 16px;font-size:14px}.settings-card{padding:23px}.settings-card h2{font-size:21px}.setting-counts{gap:21px}.setting-counts dt{font-size:11px}.setting-counts dd{font-size:32px}.element-tile{width:68px}.site-header .brand small{font-size:8px}.recommendation-audit p{font-size:13px}}
@media print{.preview-bar,.site-header,footer,.skip,#toast,.export-controls,.portfolio-toolbar{display:none!important}.export-paper{border:0;box-shadow:none}.export-work{break-inside:avoid}.work-select{display:none}.export-layout{display:block}.export-work img{max-height:430px;object-fit:contain}}
.contest-cautions{font-size:12px;background:#fff4eb;border-radius:12px;padding:15px 18px;margin:0 24px 24px;line-height:1.85}.contest-cautions b{font-size:13px}.contest-cautions ul{padding-left:18px;margin-top:7px}.contest-cautions a{display:inline-block;margin-top:8px;text-decoration:underline}.detail-section .contest-cautions{margin:0 0 20px}.recommend-option.featured>.contest-cautions{margin-inline:40px}@media(max-width:560px){.contest-cautions,.recommend-option.featured>.contest-cautions{margin-inline:18px}}
.audience-label{font-size:11px;color:var(--blue);font-weight:700;margin-top:10px!important}.lane-more{font-size:13px;margin-top:2px}.formats .object-choice .notebook-object{padding:0;height:132px;margin-bottom:0}
@media(max-width:560px){.preview-bar>span:nth-child(2){display:inline}.preview-bar #storage-status{display:inline}}
#backup-text{height:180px;max-width:100%;font-family:monospace;font-size:11px;margin-top:15px;white-space:pre;overflow:auto}#backup-download{margin-top:20px}
.object.o6{background-image:url('assets/camera.png');background-size:contain;background-position:center}.category-fan .object.o6{aspect-ratio:1}@media(min-width:1101px){.category-fan{grid-template-columns:repeat(7,1fr);gap:13px}.category-link strong{font-size:14px}}

/* Japanese headings: keep short phrases intact; artwork must not steal text width. */
.page-heading h1,.recommend-intro h1,.plan-heading h1,.quiz-panel h1,.plan-section-heading h2{text-wrap:balance}
@media(max-width:900px){.page-heading .heading-row{display:block;position:relative;padding-top:12px}.page-heading .heading-row>.object{position:absolute;width:68px;right:0;top:-55px}.page-heading .crumb{min-height:30px;padding-right:75px}.page-heading h1{max-width:100%}}
@media(max-width:600px){.plan-list-head .plan-heading{position:relative;display:block;padding-top:9px}.plan-list-head .plan-heading>.object{position:absolute;right:0;top:-68px;width:63px;margin:0}.plan-list-head .eyebrow{padding-right:65px;font-size:11px}.plan-list-head .plan-heading h1{max-width:100%;font-size:30px}.recommend-intro h1{font-size:29px}}

.interest-jumps{display:flex;flex-wrap:wrap;gap:12px;margin-top:-27px;margin-bottom:32px}.interest-jumps button{background:#fff;color:var(--blue);border:1px solid #cbcde0;border-radius:30px;padding:12px 19px;font-size:14px;font-weight:700;box-shadow:0 3px 0 #d9dbeb}.interest-jumps button:hover{background:#e9ebff}.interest-jumps span{margin-left:12px}.interest-lane{scroll-margin-top:20px}@media(max-width:560px){.interest-jumps{gap:9px;margin-top:-15px}.interest-jumps button{font-size:12px;padding:11px 13px}}
